// #ifdef H5
var jweixin = require('weixin-js-sdk');
// #endif
import UniShare from '@/uni_modules/uni-share/js_sdk/uni-share.js';
import configService from '@/common/service/config.service.js';
const uShare = new UniShare();
import api from '@/api/index.js'
export default class Share {
	static share(sharelist) {
		// #ifdef APP-PLUS
		uShare.show({
			content: { //公共的分享参数配置  类型（type）、链接（herf）、标题（title）、summary（描述）、imageUrl（缩略图）
				type: 0,
				title: sharelist.title,
				summary: sharelist.content,
				href: sharelist.url,
				imageUrl: sharelist.img
			},
			menus: [{
					"img": configService.staticDomainURL + "/app-plus/sharemenu/wechatfriend.png",
					"text": "微信好友",
					"share": { //当前项的分享参数配置。可覆盖公共的配置如下：分享到微信小程序，配置了type=5
						"provider": "weixin",
						"scene": "WXSceneSession"
					}
				},
				{
					"img": configService.staticDomainURL + "/app-plus/sharemenu/wechatmoments.png",
					"text": "微信朋友圈",
					"share": {
						"provider": "weixin",
						"scene": "WXSceneTimeline"
					}
				},
				{
					"img": configService.staticDomainURL + "/app-plus/sharemenu/copyurl.png",
					"text": "复制",
					"share": "copyurl"
				},
				{
					"img": configService.staticDomainURL + "/app-plus/sharemenu/more.png",
					"text": "更多",
					"share": "shareSystem"
				}
			],
			cancelText: "取消分享",
		}, e => { //callback
			console.log(uShare.isShow);
			console.log(e);
		})
		// #endif

		//#ifdef H5
		api.apiService.get_jssdk_config({
			url: window.location.href,
		}).then(res => {
			// console.log(res,'#####################################');
			if (res.code == 0) {
				jweixin.config({
					debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来，若要查看传入的参数，可以在pc端打开，参数信息会通过log打出，仅在pc端时才会打印。
					appId: res.data.appId, // 必填，公众号的唯一标识
					timestamp: res.data.timestamp, // 必填，生成签名的时间戳
					nonceStr: res.data.nonceStr, // 必填，生成签名的随机串
					signature: res.data.signature, // 必填，签名
					jsApiList: ['onMenuShareTimeline', 'onMenuShareAppMessage',
						'onMenuShareQQ', 'showOptionMenu'
					] // 必填，需要使用的JS接口列表
				});
				jweixin.error(function(res) {
					console.log('error', res);
					// config信息验证失败会执行error函数，如签名过期导致验证失败，具体错误信息可以打开config的debug模式查看，也可以在返回的res参数中查看，对于SPA可以在这里更新签名。
				});
				jweixin.ready(() => {
					let shareinfo = {
						title: sharelist.title, // 标题
						link: sharelist.url,
						desc: sharelist.content, // 分享描述
						imgUrl: sharelist.img, // 分享图标
						type: 0,
						success: function() {
							// 用户确认分享后执行的回调函数
						}
					};
					jweixin.showOptionMenu();
					jweixin.onMenuShareAppMessage(shareinfo);
					jweixin.onMenuShareTimeline(shareinfo);
				});
			}
		});
		// #endif

	}


}
